welcome_dialog_data_h = custom_target('welcome-dialog-data-h',
                                      input : [meson.project_source_root() / 'tools/generate-welcome-dialog-data.py',
                                               meson.project_source_root() / 'desktop/org.gimp.GIMP.appdata.xml.in.in'],
                                      output : ['welcome-dialog-data.h'],
                                      command : [python, '@INPUT0@', gimp_version, '--header'],
                                      capture: true)
welcome_dialog_data_c = custom_target('welcome-dialog-data-c',
                                      input : [meson.project_source_root() / 'tools/generate-welcome-dialog-data.py',
                                               meson.project_source_root() / 'desktop/org.gimp.GIMP.appdata.xml.in.in'],
                                      output : ['welcome-dialog-data.c'],
                                      command : [python, '@INPUT0@', gimp_version],
                                      capture: true)

libappdialogs_sources = [
  'about-dialog.c',
  'action-search-dialog.c',
  'channel-options-dialog.c',
  'color-profile-dialog.c',
  'color-profile-import-dialog.c',
  'convert-indexed-dialog.c',
  'convert-precision-dialog.c',
  'data-delete-dialog.c',
  'dialogs-constructors.c',
  'dialogs.c',
  'extensions-dialog.c',
  'file-open-dialog.c',
  'file-open-location-dialog.c',
  'file-save-dialog.c',
  'fill-dialog.c',
  'grid-dialog.c',
  'image-merge-layers-dialog.c',
  'image-new-dialog.c',
  'image-properties-dialog.c',
  'image-scale-dialog.c',
  'input-devices-dialog.c',
  'item-options-dialog.c',
  'keyboard-shortcuts-dialog.c',
  'layer-add-mask-dialog.c',
  'layer-options-dialog.c',
  'lebl-dialog.c',
  'metadata-rotation-import-dialog.c',
  'module-dialog.c',
  'palette-import-dialog.c',
  'path-export-dialog.c',
  'path-import-dialog.c',
  'path-options-dialog.c',
  'preferences-dialog-utils.c',
  'preferences-dialog.c',
  'print-size-dialog.c',
  'quit-dialog.c',
  'resize-dialog.c',
  'resolution-calibrate-dialog.c',
  'scale-dialog.c',
  'stroke-dialog.c',
  'template-options-dialog.c',
  'tips-dialog.c',
  'tips-parser.c',
  'user-install-dialog.c',
  'welcome-dialog.c',
  gitversion_h,
  welcome_dialog_data_c,
  welcome_dialog_data_h,
]

# Auto-generated sources
libappdialogs_sources += [
  custom_target('authors.h',
    input : [ 'authors.xsl', meson.project_source_root() / 'authors.xml' ],
    output: [ 'authors.h' ],
    command: [ xsltproc, '-o', '@OUTPUT@', '@INPUT0@', '@INPUT1@' ],
  )
]

libappdialogs = static_library('appdialogs',
  libappdialogs_sources,
  include_directories: [ rootInclude, rootAppInclude, ],
  c_args: '-DG_LOG_DOMAIN="Gimp-Dialogs"',
  dependencies: [
    appstream_glib,
    gegl,
    gexiv2,
    gtk3,
  ],
)
